package com.gd.luxiaoyu.filter;

import javax.servlet.*;
import java.io.IOException;

public class encordingFilter implements Filter {
    private FilterConfig config;
//此Filter被释放时的回调方法
    public void destroy() {
    }
//主要做过滤工作的方法
//FilterChain用于调用过滤器链中的下一个过滤器
    public void doFilter(ServletRequest request,ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        //获取Filter的初始化参数的值
        String encoding = config.getInitParameter("encoding");
        if (encoding != null && !"".equals(encoding)) {
            //设置请求数据的编码方式
            request.setCharacterEncoding(encoding);
        }
//把请求和响应对象传给过滤链中的下一个要调用的过滤器或Servlet
        chain.doFilter(request, response);
    }
//Filter初始化时的回调方法
//FilterConfig接口实例中封装了这个Filter的初始化参数
    public void init(FilterConfig config) throws ServletException {
        this.config = config;

    }
}
